Remote data capture and management systems

ABSTRACT

A computer implemented method for managing data of a remote system includes receiving, at a processor on the remote system, fundamental data from a monitored subsystem of the remote system and/or at least one associated subsystem of the remote system as specified by a diagnostic protocol for the monitored subsystem and wirelessly transmitting the fundamental data to a remote support center that is separate from the remote system. The remote system applies additional, non-certified, logic to determine if augmented diagnostic data is desired. The method also includes wirelessly receiving a signal from the remote support center including at least one of a request for augmented data or a diagnostic protocol change command. The method also includes receiving the augmented data from the monitored subsystem and/or the at least one associated subsystem and/or at least one other subsystem of the remote system, and transmitting the augmented data to the remote support center.

BACKGROUND 1. Field

The present disclosure relates to remote systems (e.g., aircraft orother vehicles), more specifically to data capture and managementsystems for remote systems.

2. Description of Related Art

Modern aircraft systems, for example, perform diagnostic tests on everyaspect of their operation, often at very high periodic rates. The amountof data gathered far exceeds the capacity to either store all of thedata locally or to communicate the data elsewhere onboard the aircraftor off of the aircraft even though only a subset of the capturedinformation may be of interest.

Such conventional methods and systems have generally been consideredsatisfactory for their intended purpose. However, there is still a needin the art for improved aircraft data capture and management systems insafety critical applications where wholesale modification of applicationdiagnostics software is not practical due to certificationconsiderations. The present disclosure provides a solution for thisneed.

SUMMARY

A computer implemented method for managing data of a remote systemincludes receiving, at a processor on the remote system, fundamentaldata from at least one of a monitored subsystem of the remote system orat least one associated subsystem of the remote system as specified by adiagnostic protocol for the monitored subsystem and wirelesslytransmitting the fundamental data to a remote support center that isseparate from the remote system. The method also includes wirelesslyreceiving a signal from the remote support center including at least oneof a request for augmented data or a diagnostic protocol change command,wherein if the signal includes a request for augmented data, causing themonitored subsystem and/or the at least one associated subsystem and/orat least one other subsystem of the remote system to output augmenteddata based on the request for augmented data, wherein, if the signalincludes a diagnostic protocol change command, modifying the diagnosticprotocol based on the diagnostic protocol change command to modify acontent or a format of the fundamental data. The method also includesreceiving the augmented data from the monitored subsystem and/or the atleast one associated subsystem and/or at least one other subsystem ofthe remote system, and transmitting the augmented data to the remotesupport center.

Modifying the diagnostic protocol can include modifying a stack/tablelogic that defines the diagnostic protocol. In certain embodiments,modifying the diagnostic protocol can include modifying which subsystemsof the remote system that data is output from with the fundamental data.

In certain embodiments, modifying the diagnostic protocol can includemodifying a sample rate. Modifying the diagnostic protocol can includemodifying a sample time length. Causing the output of augmented dataincludes modifying a data sample rate.

The remote system can be an aircraft, for example. In certainembodiments, the remote support center is a ground based support center.

A computer implemented method for managing data of a remote system caninclude wirelessly receiving, at a processor of a remote data center andfrom a remote system, a fundamental data from a monitored subsystem ofthe remote system and/or at least one associated subsystem of the remotesystem as specified by a diagnostic protocol for the monitoredsubsystem, determining if augmented data or a diagnostic protocol changeis desired based upon the fundamental data received, and wirelesslytransmitting a signal from the remote support center including at leastone of a request for augmented data or a diagnostic protocol changecommand. The method can further include receiving, from the remotesystem, the augmented data from the monitored subsystem and/or the atleast one associated subsystem and/or at least one other subsystem ofthe remote system. In certain embodiments, the method can includeutilizing non-certified software to process the fundamental data and/orthe augmented data.

A non-transitory computer readable medium includes computer readableinstructions for executing a method a described above.

These and other features of the systems and methods of the subjectdisclosure will become more readily apparent to those skilled in the artfrom the following detailed description taken in conjunction with thedrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

So that those skilled in the art to which the subject disclosureappertains will readily understand how to make and use the devices andmethods of the subject disclosure without undue experimentation,embodiments thereof will be described in detail herein below withreference to certain FIGURES, wherein:

FIG. 1 is a schematic view of an embodiment of a system performing anembodiment of a method in accordance with this disclosure.

DETAILED DESCRIPTION

Reference will now be made to the drawings wherein like referencenumerals identify similar structural features or aspects of the subjectdisclosure. For purposes of explanation and illustration, and notlimitation, an illustrative view of an embodiment of a system inaccordance with the disclosure is shown in FIG. 1 and is designatedgenerally by reference character 100. The systems and methods describedherein can be used to capture and manage data in a remote system (e.g.,an aircraft).

With respect to certain data systems, U.S. Pat. No. 9,213,626,incorporated by reference herein, describes one or more embodiments ofhow to implement a dynamically controlled buffer storage mechanism forthe capture of diagnostic information. U.S. Patent Applicationpublication 2015/0347127, incorporated herein by reference, describesone or more embodiments of a stack/table driven logic engine. Asappreciated by those having ordinary skill in the art, stack/tablesystems and operations allow quick verification that already approvedsystems will continue to always work without need for rigorousre-verification of codes. This allows modification (e.g., changes,additions, deletion) of logic equations.

Referring to FIG. 1, a remote system 100 is shown separate from remotesupport center 200. The remote system 100 can be an airplane, forexample, or any other suitable system (e.g., any suitable vehicle,satellite, etc.). The remote supports center 200 can be a groundstation, for example.

The remote system 100 can include a data module 101 including anysuitable hardware and/or software for collecting, storing, and/ortransmitting data to the remote support center 200. The data module 101can be operatively connected to at least one monitored subsystem 103(e.g., an engine, one or more portions of a landing gear system). Thedata module 101 can form one or more portions of a diagnostic system ofthe remote system 100, and/or can be operatively connected to one ormore separate diagnostic systems of the remote system 100 toreceive/transmit data therefrom/thereto (e.g., such that the data module101 is connected to the monitored subsystem through the diagnosticsystem).

A computer implemented method for managing data of the remote system 100can be performed by the data module 101, for example. The methodincludes receiving fundamental data from at least one of a monitoredsubsystem (e.g., subsystem 103) of the remote system 100 or at least oneassociated subsystem (relative to the monitored subsystem 103) of theremote system 100 as specified by a diagnostic protocol for themonitored subsystem 103. The fundamental data is data that isautomatically collected according to the protocol in a certain condition(e.g., in an landing gear fault state, the diagnostic protocol canrequire collection of data from associated hydraulic systems and/orelectrical systems). The diagnostic protocol can be predetermined andstored on the data module 101 and/or a separate diagnostic module thatis operatively connected to the data module 101, for example.

The method includes wirelessly transmitting the fundamental data to theremote support center 200 that is separate from the remote system 100.The remote support center 200 can include far more complex, heavy,resource intensive computers and systems than those used on the remotesystem 100 for diagnostics, for example. In this regard, the remotesupport center 200 can receive the fundamental data from the remotesystem 100 and process the fundamental data differently and/or in moredetail than is available on board the remote system 200. The remotesupport center 200 can then determine of more data and/or different datais desired and/or valuable for diagnosis, and send a signal to theremote system 100.

In this regard, the method also includes wirelessly receiving a signalfrom the remote support center 200 including at least one of a requestfor augmented data or a diagnostic protocol change command. If thesignal includes a request for augmented data, then the monitoredsubsystem 103 and/or the at least one associated subsystem and/or atleast one other subsystem of the remote system 100 is caused to outputaugmented data based on the request for augmented data. Causing theoutput of augmented data can include modifying a data sample rate, forexample.

If the signal includes a diagnostic protocol change command, thediagnostic protocol can be modified based on the diagnostic protocolchange command to modify the fundamental data (e.g., a content or aformat thereof) that is output automatically/initially. Modifying thediagnostic protocol can include modifying a stack/table logic thatdefines the diagnostic protocol, for example.

In certain embodiments, modifying the diagnostic protocol can includemodifying which subsystems 103 of the remote system 100 that data isoutput from with the fundamental data. In certain embodiments, modifyingthe diagnostic protocol can include modifying a sample rate. Modifyingthe diagnostic protocol can include modifying a sample time length. Anysuitable modifications are contemplated herein.

The method can also include receiving the augmented data from themonitored subsystem 103 and/or the at least one associated subsystemand/or at least one other subsystem of the remote system 100. In certainembodiments, the method includes transmitting the augmented data to theremote support center 200, e.g., for further processing. The method canrepeat indefinitely based on what data is desired from the supportcenter 200.

An embodiment of a computer implemented method for managing data of aremote system can include wirelessly receiving, at a processor of aremote data center and from a remote system, a fundamental data from amonitored subsystem of the remote system and/or at least one associatedsubsystem of the remote system as specified by a diagnostic protocol forthe monitored subsystem, determining if augmented data or a diagnosticprotocol change is desired based upon the fundamental data received, andwirelessly transmitting a signal from the remote support centerincluding at least one of a request for augmented data or a diagnosticprotocol change command. The method can further include receiving, fromthe remote system, the augmented data from the monitored subsystemand/or the at least one associated subsystem and/or at least one othersubsystem of the remote system. In certain embodiments, the method caninclude utilizing non-certified software to process the fundamental dataand/or the augmented data.

A non-transitory computer readable medium includes computer readableinstructions for executing any suitable embodiment of a method and/orany suitable portion(s) thereof as described above.

Embodiments allow the use of a support center 200 which can select whenand how to pull data of certain systems on the remote system 100. In thecase of aircraft, many systems cannot be modified withoutre-verification of code, however, stack/table logic systems allowmodification without the need for re-verification, which can modify howon-board diagnostics works.

In the case of an aircraft, a ground support center has deeper morecomplicated diagnostic systems that need not be approved/verified sincethey are not on the aircraft. Using stack/table logic systems, forexample, a more detailed logic can be executed to provide ground supportfor specific data of a subset system (e.g., a landing gear fault cancause the landing gear system to increase sampling rate and/or selectcertain data types) without affecting the certification basis, e.g., asdescribed in U.S. Pat. No. 9,213,626.

For example, in the case of a fault in a monitored system, an initialfault can be detected and the above method can be executed. The initialfault along with any data specified by fundamental/baseline diagnosticssystem on airplane can be sent to the data module 101 which can thensend this data to ground support center. The ground support center canthen use this fundamental data (e.g., with the fault indication) todetermine what is actually occurring in the aircraft and if more/otherdata is needed or would be helpful in further diagnosis. The groundsupport center can then send a modified request/logic change to airplaneto cause it to provide more info (e.g., of a different/related system,such as hydraulic system data for a left main gear fault). The datamodule 101 can receive request/logic change, change what data iscompiled, and sends this augmented data back to ground center. Bothfundamental and augmented data can be sent together, or they can beindependent of each other. This cycle can repeat as needed.

The trigger condition associated with the diagnostic data capture can bedynamically modified also using table/stack driven logic andconfigurable input/output tables. This enables the user to leverage theavailable processing capabilities and memory availability to the maximumextent possible in diagnosing specific issues that may vary from time totime and from target to target. That is, the user may wish to gatherdeeper information on System A, for example, than on System B, or theuser may wish to gather different details about System A today versustomorrow.

Table/Stack driven logic has also been used to implement control logicusing only tables instead of software coding. This is valuable on safetycritical systems where the validation/verification of compiled code canrepresent large risk and large costs to mitigate.

For cases where a sequence of events is desired, the “trigger” of onecase can be used as an input term for the next case. For example, if theseries of events was related to Ram Air Turbine deployment due tocomplete electrical failure, the first case trigger may be related to agenerator tripping offline, which would then arm a second case triggerfor the remaining generator tripping offline, which would then arm atrigger to monitor variables related to Ram Air Turbine deployment andfunctionality.

Any suitable embodiment of table/stack driven logic can be utilized tospecify one or more trigger conditions. Each trigger condition furtherspecifies data to be captured as previously disclosed, or in the newfollowing manner:

-   -   Data_element, Sampling_rate, Sample_Start, Sample_End,        where Data_element identifies a particular atomic piece of        information to record, Sampling_rate is the frequency by which        to sample the data_element, Sample_start is the amount of time        relative to the trigger condition to start sampling, and        Sample_end is the amount of time relative to the trigger        condition to end sampling.

When data is captured, the parameter, parameter name, and a local timestamp are captured for each sample of data captured. The counterpart tothis capability is the central maintenance facility that dynamicallymonitors and sources the appropriate “deeper dive” diagnostics. Thisfacility could be configured to automatically send particular “deeperdive” diagnostic trigger and/or record specifications dependent uponreported faults. Human operations could also provide “deeper dive”trigger/record commands as well.

Embodiments combine a table/stack driven logic engine with theconfigurable trigger/ring buffer to enable the use of a powerfuldiagnostic remote support center 200 capable of pulling from a libraryof deep diagnostic logic/data capture modules to dynamically configurefielded systems for better diagnostic reporting without affecting corefunctionality of such systems. Embodiments provide improvement to theon-board diagnostic capability of aircraft without increasing theprocessing or memory requirements. Enhancements can be made dynamicallyduring flight.

Embodiments can be applied to any application with an embeddedcontroller where enhanced diagnostics are desired without changing thesource code and are not limited to aircraft. Embodiments areparticularly applicable to DO-178C certified systems such as those usedin commercial aerospace, however.

As will be appreciated by those skilled in the art, aspects of thepresent disclosure may be embodied as a system, method or computerprogram product. Accordingly, aspects of the present invention may takethe form of an entirely hardware embodiment, an entirely softwareembodiment (including firmware, resident software, micro-code, etc.) oran embodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium may be any tangible medium that can contain, or store a programfor use by or in connection with an instruction execution system,apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention are described above with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified herein.

The methods and systems of the present disclosure, as described aboveand shown in the drawings, provide for remote data management withsuperior properties. While the apparatus and methods of the subjectdisclosure have been shown and described with reference to embodiments,those skilled in the art will readily appreciate that changes and/ormodifications may be made thereto without departing from the spirit andscope of the subject disclosure.

What is claimed is:
 1. A computer implemented method for managing dataof a remote system, comprising: receiving, at a processor on the remotesystem, fundamental data from at least one of a monitored subsystem ofthe remote system or at least one associated subsystem of the remotesystem as specified by a diagnostic protocol for the monitoredsubsystem; wirelessly transmitting the fundamental data to a remotesupport center that is separate from the remote system; wirelesslyreceiving a signal from the remote support center including at least oneof a request for augmented data or a diagnostic protocol change command;wherein, if the signal includes a request for augmented data, causingthe monitored subsystem and/or the at least one associated subsystemand/or at least one other subsystem of the remote system to outputaugmented data based on the request for augmented data; wherein, if thesignal includes a diagnostic protocol change command, modifying thediagnostic protocol based on the diagnostic protocol change command tomodify a content and/or a format of the fundamental data; receiving theaugmented data from the monitored subsystem and/or the at least oneassociated subsystem and/or at least one other subsystem of the remotesystem; and transmitting the augmented data to the remote supportcenter.
 2. The method of claim 1, wherein modifying the diagnosticprotocol includes modifying a stack/table logic that defines thediagnostic protocol.
 3. The method of claim 1, wherein modifying thediagnostic protocol includes modifying which subsystems of the remotesystem that data is output from with the fundamental data.
 4. The methodof claim 1, wherein modifying the diagnostic protocol includes modifyinga sample rate.
 5. The method of claim 1, wherein modifying thediagnostic protocol includes modifying a sample time length.
 6. Themethod of claim 1, wherein causing the output of augmented data includesmodifying a data sample rate.
 7. The method of claim 1, wherein theremote system is an aircraft.
 8. The method of claim 7, wherein theremote support center is a ground based support center.
 9. Anon-transitory computer readable medium including computer readableinstructions for executing a method, the method comprising: receiving,at a processor on the remote system, fundamental data from a monitoredsubsystem of the remote system and/or at least one associated subsystemof the remote system as specified by a diagnostic protocol for themonitored subsystem; wirelessly transmitting the fundamental data to aremote support center that is separate from the remote system;wirelessly receiving a signal from the remote support center includingat least one of a request for augmented data or a diagnostic protocolchange command; wherein, if the signal includes a request for augmenteddata, causing the monitored subsystem and/or the at least one associatedsubsystem and/or at least one other subsystem of the remote system tooutput augmented data based on the request for augmented data; wherein,if the signal includes a diagnostic protocol change command, modifyingthe diagnostic protocol based on the diagnostic protocol change commandto modify the fundamental data; receiving the augmented data from themonitored subsystem and/or the at least one associated subsystem and/orat least one other subsystem of the remote system; and transmitting theaugmented data to the remote support center.
 10. The non-transitorycomputer readable medium of claim 9, wherein modifying the diagnosticprotocol includes modifying a stack/table logic that defines thediagnostic protocol.
 11. The non-transitory computer readable medium ofclaim 9, wherein modifying the diagnostic protocol includes modifyingwhich subsystems of the remote system that data is output from with thefundamental data.
 12. The non-transitory computer readable medium ofclaim 9, wherein modifying the diagnostic protocol includes modifying asample rate.
 13. The non-transitory computer readable medium of claim 9,wherein modifying the diagnostic protocol includes modifying a sampletime length.
 14. The non-transitory computer readable medium of claim 9,wherein causing the output of augmented data includes modifying a datasample rate.
 15. The non-transitory computer readable medium of claim 1,wherein the remote system is an aircraft.
 16. The non-transitorycomputer readable medium of claim 7, wherein the remote support centeris a ground based support center.
 17. A computer implemented method formanaging data of a remote system, includes wirelessly receiving, at aprocessor of a remote data center and from a remote system, afundamental data from a monitored subsystem of the remote system and/orat least one associated subsystem of the remote system as specified by adiagnostic protocol for the monitored subsystem; determining ifaugmented data or a diagnostic protocol change is desired based upon thefundamental data received; and wirelessly transmitting a signal from theremote support center including at least one of a request for augmenteddata or a diagnostic protocol change command.
 18. The method of claim17, further comprising receiving, from the remote system, the augmenteddata from the monitored subsystem and/or the at least one associatedsubsystem and/or at least one other subsystem of the remote system. 19.The method of claim 18, further comprising utilizing non-certifiedsoftware to process the fundamental data and/or the augmented data.